SharedPreferences是Android平台上一個輕量級的存儲套件,數據以Key-value鍵值對形式持久化保存的xml檔案,其檔案保存在data>data>com.example."項目名稱">shared_prefs
資料夾下。
透過Context類中的getSharedPreferences()
,此方法需要傳入兩個參數。
SharedPreferences shp = getSharedPreferences("MY_APP", Context.MODE_PRIVATE);
Context.MODE_PRIVATE
:指定該SharedPreferences數據只能被該應用讀、寫。Context.MODE_APPEND
:會檢查文件是否存在,存在就往文件追加內容,否則就創建新文件。MODE_WORLD_RADABLE
、MODE_WORLD_WRITEABLE
,但這兩種模式在Android 4.2起就被棄用了。透過Activity類中的getPreferences()
,和方法一很相似,但它只傳入一個操作模式參數,因為它會將當前運行它的Activity的類名最為文件名稱。
SharedPreferences shp = getPreferences(Context.MODE_PRIVATE);
分為寫入、讀取、刪除、清空四大操作
// 步驟1: 獲取SharePreferences物件
SharedPreferences sp = getSharedPreferences("MY_APP", Context.MODEVATE);
// 步驟2: 獲取SharedPreferences.Editor
SharedPreferences.Editor editor = sp.edit();
// 步驟3: 存儲數據
editor.putString("name", "Ian");
// 步驟4: 提交
editor.commit();
SharedPreferences sp = getSharedPreferences("MY_APP", Context.MODE_PRIVATE);
String name = sp.getString("nam", "");
editor.remove("name");
editor.commit();
editor.clear();
editor.commit();